programming4us
           
 
 
Applications Server

BizTalk Server 2010 : WCF SAP Adapter RFCs and BAPIs - Schema generation

- Free product key for windows 10
- Free Product Key for Microsoft office 365
- Malwarebytes Premium 3.7.1 Serial Keys (LifeTime) 2019
7/14/2013 7:34:09 PM

Outbound operations

When performing Client Outbound operations (from BizTalk), we have the ability to select the following contract types:

  • BAPI

  • IDOC

  • RFC

  • TRFC

If we expand the BAPI node, we will discover that our schemas are sorted based upon their functional role in the SAP system.

Inbound Operations

When performing Service Inbound Operations (to BizTalk), we have the ability to select the following contract types:

  • IDOC

  • RFC

  • TRFC

Calling RFCs/tRFCs hosted in BizTalk

If you recall, one of the key differences between RFCs and BAPIs is the Business Object Repository. BizTalk does not store these Business Objects anywhere so it is not possible for BizTalk to host a BAPI as the underlying function module will not be available.

What is interesting about BizTalk hosting an RFC is that SAP could consume it and would not even know that it is calling an external system as opposed to another SAP system. Obviously, the BASIS administrator that is configuring the endpoint would, but Microsoft is leveraging SAP's RFC SDK to ensure interoperability. This architecture also presents some interesting opportunities if your organization was against customizing SAP. You could abstract this functionality away from SAP and have it implemented in a more agile environment like BizTalk. Perhaps your organization does not have the ABAP skillset, or resource bandwidth, to code an RFC and chooses to leverage a BizTalk skillset instead.

A more practical, and likely, use of RFCs being hosted in BizTalk is data residing outside of SAP and SAP needs to obtain this information in a synchronous fashion. In this case, SAP would call a BizTalk hosted RFC, and BizTalk would retrieve the downstream information and return it back to SAP.

A real world example of BizTalk hosting an RFC is an Energy company that needed to retrieve Meter Reads from an External system via Web Services. This company did not have the SAP experience or technology stack to support calling external Web Services securely from SAP. These external Web Services used complex types, were secure, and were hosted in the partner's data center. The solution to this problem included BizTalk hosting an RFC that SAP could call on demand. In turn BizTalk would fetch the required Meter Read information from this external system and return the results back to SAP in a format that SAP was expecting.

Custom objects

If we are looking for custom objects (for example RFC), we will find them in the \RFC\OTHER hierarchy. SAP best practices indicate that whenever you have a custom object, you prefix it with the letter 'Z'. This is a great concept, especially for non-SAP resources whose first language is not German. While the documentation and naming conventions are improving, there are still a lot of tables, fields, and programs that use German words or acronyms that make absolutely no sense to an English speaking BizTalk person. By leveraging this practice of prefixing custom objects with "Z", both SAP and Microsoft resources can easily identify custom objects.

Transactions

When calling BAPIs that perform Create, Update, or Delete operations, it is necessary to generate schemas for two additional operations:

  • BAPI_TRANSACTION_COMMIT&;

  • BAPI_TRANSACTION_ROLLBACK&;

Calling either of these operations is required since we may be manipulating multiple sets of data and we either want all of the data to be successful or none of it to be successful.

For convenience purposes, we will generate all of these schemas at the same time. It is important to note that the BAPI_TRANSCTION_COMMIT&; and BAPI_TRANSACTION_ROLLBACK operations are generic and can be used in conjunction with other BAPIs. If you plan on having multiple BAPI integration scenarios within your environment, placing these schemas in a common project may be a more sustainable solution.

Other -----------------
- BizTalk Server 2010 : WCF SAP Adapter RFCs and BAPIs - Overview of SAP RFCs and BAPIs
- Exchange Server 2010 Administration Essentials : Understanding Exchange Server 2010 Organizations (part 2) - Using Configuration Containers Instead of Administrative Groups
- Exchange Server 2010 Administration Essentials : Understanding Exchange Server 2010 Organizations (part 1) - How Site-Based Routing Works
- Exchange Server 2010 Administration Essentials : Validating the Exchange Server Licensing
- Installing Configuration Manager 2007 : ConfigMgr Service Manager
- Installing Configuration Manager 2007 : Transfer Site Settings Wizard, Copy Packages Wizard
- Microsoft Dynamic AX 2009 : The Batch Framework (part 6) - Managing the Batch Server Execution Process - Manage Batch Jobs, Debug a Batch Task
- Microsoft Dynamic AX 2009 : The Batch Framework (part 5) - Managing the Batch Server Execution Process - Set Up Server Configuration, Create a Batch Group
- Microsoft Dynamic AX 2009 : The Batch Framework (part 4) - Creating a Batch Job - Using the Batch API
- Microsoft Dynamic AX 2009 : The Batch Framework (part 3) - Creating a Batch Job - From the Batch Job Form
- Microsoft Dynamic AX 2009 : The Batch Framework (part 2) - Batch-Enabling a Class
- Microsoft Dynamic AX 2009 : The Batch Framework (part 1) - Batch Processing in Dynamics AX, Common Uses of Batch Processing
- Using Non-Windows Systems to Access Exchange Server 2007 : Terminal Server Client for Mac
- Using Non-Windows Systems to Access Exchange Server 2007 : Configuring and Implementing Entourage for the Mac
- Microsoft Lync Server 2010 : Planning for Deploying External Services - High Availability
- Microsoft Lync Server 2010 : Planning for Deploying External Services - Firewall Configuration (part 2)
- Microsoft Lync Server 2010 : Planning for Deploying External Services - Firewall Configuration (part 1)
- Microsoft Lync Server 2010 : Planning for Deploying External Services - Edge Server Considerations
- Microsoft Dynamic GP 2010 : Receivables Management (part 4) - Sales e-mail settings, Customers
- Microsoft Dynamic GP 2010 : Receivables Management (part 3) - Customer classes
 
 
 
Top 10
 
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Finding containers and lists in Visio (part 2) - Wireframes,Legends
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Finding containers and lists in Visio (part 1) - Swimlanes
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Formatting and sizing lists
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Adding shapes to lists
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Sizing containers
- Microsoft Access 2010 : Control Properties and Why to Use Them (part 3) - The Other Properties of a Control
- Microsoft Access 2010 : Control Properties and Why to Use Them (part 2) - The Data Properties of a Control
- Microsoft Access 2010 : Control Properties and Why to Use Them (part 1) - The Format Properties of a Control
- Microsoft Access 2010 : Form Properties and Why Should You Use Them - Working with the Properties Window
- Microsoft Visio 2013 : Using the Organization Chart Wizard with new data
- First look: Apple Watch

- 3 Tips for Maintaining Your Cell Phone Battery (part 1)

- 3 Tips for Maintaining Your Cell Phone Battery (part 2)
programming4us programming4us